Personal Computers and portable electronic devices such as cell phones, personal digital assistants (PDAs), and wireless email terminals have become an indispensable part of everyday like for many people. It is not uncommon for individuals to employ multiple devices for managing their personal communications, schedules, address books, contact lists, task lists, and the like. Typically, each separate device will include provisions for storing data related to the primary functions of the device. For example, an individual may have both home and work computers that include software for managing a comprehensive set of personal data, including contact lists, addresses, an appointment calendar, task lists, personal notes and memos, and so forth. However, the user may have different software operating on is or her home computer from that running on his or her word computer. What is more, the individual may have different data stored on his or her home computer than that stored on his or her work computer. For example the individual's home computer may store contact information and task lists of a more personal or domestic nature, whereas the individual's work computer may store more professional or business related data. Nonetheless, there may be significant overlap between the data stored on both machines.
The same individual likely also carries a cell phone, wireless email terminal or some other mobile personal communications device. Most mobile communications devices include provisions for storing contact information related to contacting people using the device in question. For example cell phones typically include provisions for storing contact names and telephone numbers. Most wireless email terminals also function as cell phones and thus include provisions for storing contact names and both phone numbers and email addresses. Many individuals also carry separate personal digital assistants (PDAs). PDAs typically store contact information, address books calendars, task lists, memos, and other information.
With so many devices available to store personal data in so many locations, the typical user will have a great amount of personal data distributed across many devices. Problems often arise when data are stored in more than one location. Inconsistencies develop when data are added or modified in one location and the changes are not carried over to other devices storing the same or similar data. For example, suppose an individual has stored the name and phone number of a contact in his or her cell phone. Suppose further that the same contact information is stored on both the individual's home and work computers. Sometime after the individual has entered the contact information into his or her cell phone the individual learns that the contact's telephone number has changed. The user learns of this change while trying call to the contact on his or her cell phone. Since the user is using the cell phone to call the contact at the time he or she learns of the contact's new number, it is likely the user will update the appropriate record in his or her cell at that time. However, when the user updates the contact information in the cell phone he or she may not have access to his or her home or work computers. Therefore, the user cannot update the contact's information on his or her home and work computers at the same time he or she updates the cell phone record. By the time the user does again gain access to his or her home or work computers, the user may have forgotten about the updated contact information, and may fail to update the contact information on his or her home or work computers or on any of the other data storage devices that may hold the same information. If, at a later time the user tries to call the same contact from home or from work, using the contact data stored on his or her home or work computer, the retrieved phone number will be incorrect and the user may not be able to reach the contact unless or until he or she retrieves the updated number from his or her cell phone.
A contact's phone number is but one simple example of how data inconsistencies may arise between devices when the same personal data is distributed across multiple devices. Many other scenarios may be imagined in which data inconsistencies arise between different devices, especially when the number of different devices increases. In order to avoid data inconsistencies many hand-held data storage devices such as PDAs include provisions and for synchronizing data between the portable device and a host computer. In fact, a number of data synchronization protocols have been developed for performing data synchronization between various data storage devices. The particular synchronization protocol used to synchronize data between two devices will be a function of the devices themselves, the type of data being synchronized, and the type of interface between the devices. Examples of synchronization protocols currently in use include SyncML Remote Sync; SynML Local Sync; Bluetooth Synchronization (IRMC); and various device specific proprietary synchronization protocols.
It must be noted, that the synchronization protocols listed above are geared only toward synchronizing data between two devices. They do not provide a mechanism for synchronizing several devices either in parallel or sequentially. Some devices may support multiple sync protocols and may be adapted to sync with more than one device. Nonetheless, all such devices are adapted for synchronizing data between only two devices at any given time. In cases where an individual has more than two devices sharing common data, the two-way sync protocols currently available are insufficient to eliminate data inconsistencies between all of a user's devices.
When data can be added and modified on any one of a plurality of devices it is imperative that such additions and changes made on one device are propagated to the other user devices which store the same or related data. At present there is no system or mechanism available for maintaining the consistency or personal user information across a plurality of different devices.